//---------------------------------------------------------------------------------------------------------------------------------------------------------//
//---------------------------------------------------------------------------------------------------------------------------------------------------------//
#ifndef _Node_h_
#define _Node_h_
//---------------------------------------------------------------------------------------------------------------------------------------------------------//
//---------------------------------------------------------------------------------------------------------------------------------------------------------//
#include <typeinfo>
#include <stdio.h>
//---------------------------------------------------------------------------------------------------------------------------------------------------------//
//---------------------------------------------------------------------------------------------------------------------------------------------------------//
  template <class T>
  class TNode {
      
    protected :
        
      T*         info;
      
      TNode <T>* previous;
      TNode <T>* next;
      
    public :
        
      TNode();
      TNode(T data);
      TNode(T* data);
      
      ~TNode();
      
      inline T*         Info();
      inline void       Info(T*);
      inline void       Info(T);

      inline TNode <T>* Next();
      inline void       Next(TNode <T>*);
      inline void       Next(const TNode <T>&);
      
      inline TNode <T>* Previous();
      inline void       Previous(TNode <T>*);
      inline void       Previous(const TNode <T>&);
      
      TNode <T>         operator=(const TNode <T>&);
      
  };
//---------------------------------------------------------------------------------------------------------------------------------------------------------//
//---------------------------------------------------------------------------------------------------------------------------------------------------------//
#endif
//---------------------------------------------------------------------------------------------------------------------------------------------------------//
//---------------------------------------------------------------------------------------------------------------------------------------------------------//
